In a broadband multimedia distribution network, a transcoder/multiplexer (TMX) is often used to perform a number of different operations on the multimedia streams. Some of these operations include basic multiplexing of the incoming MPEG-2 transport packets, adding or dropping streams that appear in the output stream, video bit rate transcoding, statistical multiplexing, MPEG-2 video splicing, multimedia program insertion, IP data encapsulation and many others. In order to perform these tasks, each multimedia program must be readily identified and distinguished from other programs in the transport streams.
A multimedia program may contain a variety of audio, video, animation, text, data, and other information. An MPEG-2 multimedia program, for example, may contain three elementary streams a video, an audio and a data stream. In some instances, such a multimedia program may contain several additional audio or data streams, as well. In order to transmit or store such programs, the elementary streams are multiplexed to form the transport stream. The transport stream structure is based upon packets of constant size (i.e., 188 bytes in MPEG-2 transport, stream); each transport stream packet is comprised of a header and a payload. Although it is possible for a transport stream to contain only a single program stream, it is often required to transmit several multimedia programs simultaneously in a transport stream. In such cases, numerous audio, video, data and other elementary streams are combined together, in a multiplexed fashion, to form the composite transport stream.
In order to facilitate identification and extraction of elementary streams, various program identification fields and mapping tables are dispersed throughout the transport stream. The information contained in these tables may be utilized to uniquely identify a specific multimedia program and/or elementary stream carried within a single or plurality of multiplexed transport streams. In a broadband multimedia distribution network, a receiver (e.g., a TMX) should be able to readily identify and extract any program stream and its constituent elementary streams from the plurality of transport streams at its disposal. In prior art systems, the program information (e.g., information contained in MPEG Section Tables) is collected sequentially. Sequential collection of such program information from a large number of MPEG transport streams could take several minutes. This is an unreasonable amount of time and would make a TMX receiving such a large number of transport streams practically unusable.
It would be advantageous to provide a method and apparatus for collecting the program information from a plurality of transport streams simultaneously and efficiently. It would also be advantageous to enable collection of the program information asynchronously and in parallel with the processing of the program information.
The methods and apparatus of the present invention provide the foregoing and other advantages.